A memory in a conventional CD-ROM driving system is typically used in three types of data processing operations. Specifically, the memory may be used to buffer or store data reproduced from a compact disk, may be used during the execution of error-correction operations to correct errors in the stored data, and may be used to transmit data to a host computer.
In order to ensure that the memory is available to perform the above data processing operations, a predetermined time period is divided into several memory time slots, and one of the memory time slots is assigned to each of the operations. In other words, during a particular memory time slot, the memory is available to perform the data processing operation assigned to such time slot.
However, the conventional driving system has several disadvantages. For example, often a high-speed computer is connected to the CD-ROM driving system as the host computer, and thus, the host computer can perform many operations during the time period defined by one of the memory time slots. Accordingly, if the host computer requests use of the memory during a time slot which is not assigned to host transmission operations, the host computer must wait a relatively long period of time until a memory time slot that is assigned to a host transmission operation begins. As a result, the system cannot immediately comply with the host computer's request and thus, makes the host computer inefficient.